<html>
<head><meta charset="utf-8"><title>Diagnosing #77382 · t-compiler · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/index.html">t-compiler</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html">Diagnosing #77382</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="212115605"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212115605" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212115605">(Oct 02 2020 at 19:10)</a>:</h4>
<p>Hey <span class="user-mention" data-user-id="138448">@cuviper</span> I'm around if you want someone to bounce ideas off of or have any questions.</p>



<a name="212116189"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212116189" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212116189">(Oct 02 2020 at 19:14)</a>:</h4>
<p>I left a comment on <a href="https://github.com/rust-lang/rust/issues/77382#issuecomment-702908970">https://github.com/rust-lang/rust/issues/77382#issuecomment-702908970</a> as well.</p>



<a name="212116488"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212116488" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212116488">(Oct 02 2020 at 19:17)</a>:</h4>
<p><span class="user-mention" data-user-id="118594">@ecstatic-morse</span> thanks! I'm not sure how to better dig into this.</p>



<a name="212116499"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212116499" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212116499">(Oct 02 2020 at 19:17)</a>:</h4>
<p>I can try to get that MIR you asked for</p>



<a name="212116510"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212116510" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212116510">(Oct 02 2020 at 19:17)</a>:</h4>
<p>For background (you might know some of this already), there's a MIR transformation called <code>ElaborateDrops</code> that adds drop flags to the MIR when necessary, as well as removing drops of locals that are always "dead" at that point in the CFG (usually because they have been moved out of).</p>



<a name="212116658"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212116658" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212116658">(Oct 02 2020 at 19:18)</a>:</h4>
<p>Ah okay, I can get the MIR locally for the code in that stack trace, and it should be the same across platforms (modulo pointer width).</p>



<a name="212116697"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212116697" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212116697">(Oct 02 2020 at 19:19)</a>:</h4>
<p>I'll try to collect several samples -- the passing 2020-07-05, failed 06, current nightly, and your pr with the flag</p>



<a name="212116707"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212116707" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212116707">(Oct 02 2020 at 19:19)</a>:</h4>
<p>would LLVM-IR help?</p>



<a name="212116726"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212116726" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212116726">(Oct 02 2020 at 19:19)</a>:</h4>
<p>Yes.</p>



<a name="212117095"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212117095" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212117095">(Oct 02 2020 at 19:22)</a>:</h4>
<p>Also helpful would be the types that are being <code>drop_in_place</code>-ed in that stack trace so I can dump the MIR for their drop-glue and/or know what I'm looking for in <code>sources</code>. Another thing is that the MIR for <code>&lt;libcoreinst::source::FileLocation as libcoreinst::source::ImageLocation&gt;::sources</code> is too big for me to debug by inspection. Reducing it would be super helpful, but might be kind of hard.</p>



<a name="212117160"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212117160" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212117160">(Oct 02 2020 at 19:23)</a>:</h4>
<p>ok. it's slow going, because our s390x mainframes are heavily partitioned, but I'll get started</p>



<a name="212117200"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212117200" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212117200">(Oct 02 2020 at 19:23)</a>:</h4>
<p>I don't know how much I can reduce it, because it seems pretty sensitive to changes, but I'll see</p>



<a name="212117365"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212117365" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212117365">(Oct 02 2020 at 19:24)</a>:</h4>
<p>No worries. I'm just super excited to have an actual chance at fixing this.</p>



<a name="212117598"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212117598" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212117598">(Oct 02 2020 at 19:26)</a>:</h4>
<p>by inspection, I think the only thing that would be dropping there is <code>io::Error</code></p>



<a name="212117713"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212117713" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212117713">(Oct 02 2020 at 19:27)</a>:</h4>
<p>I do get that "Couldn't read signature file" output if I run the test <code>--nocapture</code></p>



<a name="212119802"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212119802" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Dylan MacKenzie (ecstatic-morse) <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212119802">(Oct 02 2020 at 19:45)</a>:</h4>
<p>True. Okay, <code>open</code> should never return the <code>Boxed</code> variant of <code>io::Error</code> AFAICT. I wonder if we're freeing that variant by mistake? That's the only memory access I see along the <code>drop</code> path.</p>



<a name="212120290"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212120290" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212120290">(Oct 02 2020 at 19:50)</a>:</h4>
<p>or worse, it could be dropping the <code>io::Result</code> along the <code>Ok</code> variant</p>



<a name="212120303"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212120303" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212120303">(Oct 02 2020 at 19:50)</a>:</h4>
<p>speculation while compiling... <a href="https://xkcd.com/303/">https://xkcd.com/303/</a></p>



<a name="212120320"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212120320" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212120320">(Oct 02 2020 at 19:50)</a>:</h4>
<p>doesn't help that I kicked off multiple builds in parallel, so I don't have to babysit it</p>



<a name="212120340"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212120340" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212120340">(Oct 02 2020 at 19:50)</a>:</h4>
<p>I probably should have scripted those in sequence, oh well</p>



<a name="212140425"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212140425" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212140425">(Oct 02 2020 at 23:27)</a>:</h4>
<p>I posted those files... let me know if there's any other useful data I can collect right now</p>



<a name="212140432"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/Diagnosing%20%2377382/near/212140432" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> cuviper <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/Diagnosing.20.2377382.html#212140432">(Oct 02 2020 at 23:27)</a>:</h4>
<p>I probably won't touch this over the weekend :)</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>